﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using BussinessLogicTecnoPez.Produccion.Clasificacion_e_Incubacion;
using BussinessLogicTecnoPez.Produccion.Enfermedades_y_control_de_estanques;
using BussinessLogicTecnoPez;

public partial class Modules_EnfermedadesControlEstanque_EnfermedadesEstanques : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            GenericMasterPage master = (GenericMasterPage)this.Master;
            master.Imagen = "../Styles/Icons/ic_soporte.gif";
            master.Titulo = "Enfermedades encontradas";
        }

        TPPEnfermedad.ObjType = typeof(Enfermedad);
        TPPEnfermedad.TecnoPezActivateValidation = true;
        TPPEstanque.ObjType = typeof(Estanque);
        TPPEstanque.TecnoPezActivateValidation = true;
        TPPEmpleado.ObjType = typeof(Veterinario);
        TPPEmpleado.TecnoPezActivateValidation = true;

        this.lblMessage.Text = "";

        ConfigurarGrilla();
    }

    protected void btnAceptar_Click(object sender, EventArgs e)
    {
        EnfermedadesEstanques objEnfermedadEstanque = new EnfermedadesEstanques();
        objEnfermedadEstanque.Enfermedad = TPPEnfermedad.ItemSelected as Enfermedad;
        objEnfermedadEstanque.Estanque = TPPEstanque.ItemSelected as Estanque;
        objEnfermedadEstanque.Veterinario = TPPEmpleado.ItemSelected as Veterinario;
        objEnfermedadEstanque.Estado = Convert.ToInt32(EnfermedadesEstanques.EstadoEnfermedadEstanque.pendiente);

        DateTime varFecha;
        if (DateTime.TryParse(TPCFecha.Text, out varFecha))
        {
            objEnfermedadEstanque.Fecha = varFecha;
        }
        else
        {
            this.lblMessage.Text = "La fecha ingresada es incorrecta";
            return;
        }

        if (EnfermedadesEstanques.getManager.Insert(objEnfermedadEstanque))
        {
            this.lblMessage.Text = "Se registró la enfermedad correctamente";
        }
        else
        {
            this.lblMessage.Text="No se pudo registrar la enfermedad";
        }
        ConfigurarGrilla();

        TPPEmpleado.ItemSelected = null;
        TPPEnfermedad.ItemSelected = null;
        TPPEstanque.ItemSelected = null;
        TPCFecha.Text = "";

    }

    private void ConfigurarGrilla()
    {
        DataControlField[] extraButtons = new DataControlField[0];
        TDGEnfermedades.setupGrid(typeof(EnfermedadesEstanques), cargarUltimasEnfermedades, false, false, this.ViewState, extraButtons);
    }

    private void cargarUltimasEnfermedades()
    {
        EnfermedadesEstanques.getManager.ClearFilters();
        EnfermedadesEstanques.getManager.ClearOrders();

        EnfermedadesEstanques.getManager.AddOrder("Fecha", GenericManager<EnfermedadesEstanques>.Order.orderDirection.DESC);

        List<EnfermedadesEstanques> listado = EnfermedadesEstanques.getManager.GetFilter();

        if (listado.Count > 10)
        {
            listado.RemoveRange(10, listado.Count - 10);
        }

        TDGEnfermedades.DataSource = listado;
        TDGEnfermedades.DataBind();
    }
    protected void btnHistorial_Click(object sender, EventArgs e)
    {
        Response.Redirect("HistorialEnfermedades.aspx");
    }
}
